hysop.operator.custom_symbolic module¶
@file hysop/operator/symbolic.py CustomSymbolicOperator solver frontend.
- class hysop.operator.custom_symbolic.CustomSymbolicOperator(name, exprs, variables, implementation=None, base_kwds=None, **kwds)[source]¶
Bases:
ComputationalGraphNodeFrontend
Interface for custom symbolic operators. Available implementations are:
*OPENCL (opencl code generated kernels)
Initialize a CustomSymbolicOperator operator frontend.
See hysop.operator.base.CustomSymbolicOperatorBase to see how expressions are parsed.
- Parameters:
name (str) – Name of this custom operator.
exprs (hysop.symbolic.exprs or array like of valid expresions) – Expressions that will generate code. Valid expressions are defined in SymbolicExpressionParser.
variables (dict) – dictionary of fields as keys and topologies as values.
implementation (Implementation, optional, defaults to None) – target implementation, should be contained in available_implementations(). If None, implementation will be set to default_implementation().
base_kwds (dict, optional, defaults to None) – Base class keywords arguments. If None, an empty dict will be passed.
kwds – Keywords arguments that will be passed towards implementation operator __init__.